import socket
import threading
"""
AF_INET: 基于 IPV4 的网络通信 SOCK_STREAM: 基于 TCP 的流式 socket 通信
socket.SOCK_STREAM TCP  UDP，也就是SOCK_DGRAM#
IPV4 32位2进制数，每8位换算成10进制，用小数点隔开，称为点分10进制，每8个二进制数转换为1个十进制数
二进制数全部是0就是0，二进制全是1就是11 就是255 FF  通过DNS服务器转#
http是tcp的80端口，https是tcp的443端口 SMTP 25端口
"""

s =socket.socket(socket.AF_INET,socket.SOCK_STREAM)
s.bind(("127.0.0.1",8888))#将套接字bind到服务器地址
s.listen(5)#监听Tcp传入连接

def handle_tcp(sock,addr):
    print("新的连接来自%s:%s"%addr)
    sock.send(b"hello world")

    while True:
        data =sock.recv(1024)#接收1024个字节的数据
        if not data:
            break
        sock.send(b'hello,%s'% data)
    sock.close()

if __name__ == '__main__':
    sock,addr =s.accept() #接收客户连接
    t =threading.Thread(target=handle_tcp,args=(sock,addr))
    t.start()
    # t1 =threading.Thread(target=handle_tcp,args=(sock,addr))
    #t1.start()